package poo.biblioteca.vistas.autores;

import biblioteca.entidades.Autor;
import java.util.ArrayList;
import javax.swing.AbstractListModel;

public class LsmAutor extends AbstractListModel<Autor> {
    ArrayList<Autor> autores = new ArrayList<>();

    public LsmAutor() {
    }

    public LsmAutor(ArrayList<Autor> autores) {
        this.autores = autores;
    }
    
    @Override
    public int getSize() {
        return autores.size();
    }

    @Override
    public Autor getElementAt(int index) {
        return autores.get(index);
    }
    
    public void addAutor (Autor autor) {
        
        for (Autor a : autores) {
            if (a.getIdAutor() == autor.getIdAutor())
                return;
        }
        
        autores.add(autor);
        fireContentsChanged(autor, 0, autores.size());
    }

    public ArrayList<Autor> getAutores() {
        return autores;
    }

    public void eliminarAutor(Autor autor) {
        autores.remove(autor);
        fireContentsChanged(autor, 0, autores.size());
    }
    
}